Windows Server 2016でアクティブディレクトリサーバを構築してみた
はじめに
AWSチームのすずきです。
Ec2インスタンスとして起動した Windows Server 2016 環境を利用して、 アクティブディレクトリ(AD)サーバの検証環境として構築する機会がありましたので、で紹介させていただきます。
環境情報
- AMI: Windows_Server-2016-Japanese-Full-Base-2018.01.12 - ami-d37ee4b5
- インスタンスタイプ: t2.small
詳細設定
ネットワーク
- デフォルトVPCを利用
- パブリックIP、プライベートIPとも自動割当
セキュリティグループ
- 作業環境からのRDP接続と、WorkSpaces用途の為、管理者ガイドに記載されたポートをデフォルトVPC内に開放しました。
- TCP/UDP 53 - DNS
- TCP/UDP 88 - Kerberos authentication
- UDP 123 - NTP
- TCP 135 - RPC
- UDP 137-138 - Netlogon
- TCP 139 - Netlogon
- TCP/UDP 389 - LDAP
- TCP/UDP 445 - SMB
- TCP 1024-65535 - Dynamic ports for RPC
起動確認画面
AD設定
AdministratorユーザでRDP接続後、ADサーバとして設定を行いました。
役割追加
- 「サーバマネージャ」を起動します
- 「役割と機能の追加」より「役割ベースまたは機能ベースのインストール」を選択します
- 「サーバの役割」として「Active Directory ドメインサービス」「DNSサーバー」を選択します
- 役割選択時に案内される「機能の追加」を指定します
- DNSサーバ追加時に静的IP(固定IP)が存在しない警告は無視します。
- インスタンスをターミネートしない限りVPCで付与されるプライベートIPは変わらないので、短期検証用環境では動的のままでも実害がありません。
- 「機能」「AD DS」はデフォルトのまま、確認画面で「インストール」を行います。
- 役割と機能のインストール完了後、ドメインコントローラに昇格させます
- 独立したAD環境として新しいフォレストを追加、ルートドメインは「cm-test.local」としました。
- ドメインコントローラ、DNSの設定はデフォルト、DSRMパスワードのみ指定しました
- NetBIOSドメイン名は、ドメイン名との判別性を確保するため「AD01」に変更しました
- 「パス」「オプションの確認」「前提条件のチェック」を経由して、インストールを行います。
# # AD DS 配置用の Windows PowerShell スクリプト # Import-Module ADDSDeployment Install-ADDSForest ` -CreateDnsDelegation:$false ` -DatabasePath "C:\Windows\NTDS" ` -DomainMode "WinThreshold" ` -DomainName "cm-test.local" ` -DomainNetbiosName "AD01" ` -ForestMode "WinThreshold" ` -InstallDns:$true ` -LogPath "C:\Windows\NTDS" ` -NoRebootOnCompletion:$false ` -SysvolPath "C:\Windows\SYSVOL" ` -Force:$true
- インストールが完了すると、再起動が行われます。
- ドメインコントローラとしての初期設定に10分程度かかります。
動作確認
- ADの初期設定が完了すると、「Active Directory」関連のツールが利用可能となります。
- ドメイン(cm-test.local)へのユーザ追加は、「ユーザとコンピューター」より実施可能です。
まとめ
今回、画面キャプチャを取得しながらの作業でしたが、40分程度でアクティブディレクトリサーバを用意する事が出来ました。 AD設定を事前に用意されたスクリプトなどで実施することでより短時間での構築も可能かと思われます。
AWSでは、マネージドなディレクトリサービスとしてAWS Microsoft ADが提供されていますが、 オンプレミス環境との連携などで自由度の高いディレクトリサーバが必要となる場合には、 WindowsサーバをインストールしたEC2の利用もお試しください。